Many electronic devices store data using a memory known as Random Access Memory (RAM). A wide variety of RAM architectures have been developed. Generally, these architectures feature an address bus that identifies the memory address being accessed and a data bus that carries data being written to or read from the memory.
Some RAM architectures feature a bidirectional data bus that can change direction based on whether data is being read or written. Switching the direction of this bus can take a small but, nevertheless, significant amount of time.
To avoid a time penalty associated with switching bus direction, other RAM architectures feature multiple buses. For example, a memory may feature a read data bus to carry data retreived from memory and a separate write bus to carry data being written.